package com.auto.survey.activity.adjustment.adjustment_high.entity

import androidx.room.Entity
import androidx.room.Ignore
import androidx.room.PrimaryKey

@Entity(tableName = "projects")
data class Project@JvmOverloads constructor(
    @PrimaryKey(autoGenerate = true)
    var id: Int = 0,
    var name: String, // 项目名称
    var discrib:String, //项目描述
    var personName:String, //负责人
    var createTime: Long = System.currentTimeMillis(), // 创建时间
    @Ignore  var pointCount: Int = 0, // 总点数// 不存储到数据库，通过计算得到
    @Ignore var observationCount: Int = 0, // 测段数 // 不存储到数据库，通过计算得到
    var status: Int = 0x3001 // 项目状态
){
    // 计算总点数（已知点 + 未知点）
    fun calculatePointCount(knownPoints: List<KnownPoint>, unknownPoints: List<UnknownPoint>) {
        this.pointCount = knownPoints.size + unknownPoints.size
    }

    // 计算观测值数量
    fun calculateObservationCount(observations: List<Observation>) {
        this.observationCount = observations.size
    }
}

//enum class ProjectStatus {
//    0x3001:IN_PROGRESS, // 进行中
//    0x3002:COMPLETED,   // 已完成
//    0x3003:FAILED       // 计算失败
//}
